/**
 * Created by QianQi on 2016/4/13.
 */
$(function(){
    var oHideParams = $.getHideParams();// <body> 下隐藏域键值对，name 为键
    var oUrlParams = $.getUrlParams();// url 附加参数键值对
    var URLS = {
        d_pagebar: 'demo_front.json'// 数据请求
    };
    var jqDatalist = $('.js-datalist'),// 绘制分页数据的容器
        oPagebarApi;// 分页 api
    // 顶部按钮点击事件
    var fTbtnsClick = function(){
        var jqThis = $(this);
        switch (jqThis.attr('data-type')){
            case 'info':
                console.log('获取到的分页信息:',oPagebarApi.page);// 获取分页信息
                break;
            case 'fGetCurData':
                console.log('当前页数据:',oPagebarApi.fGetCurData());// 获取分页信息
                break;
            case 'fGetData':
                console.log('全部数据:',oPagebarApi.fGetData());// 获取分页信息
                break;
            //case 'destroy':
            //    oPagebarApi.destroy();// 销毁分页
            //    break;
        }
    };
    // 分页数据返回后的绘制函数
    var fAfterFlip = function(datalist,pageObj,data){
        var str='<div class="t_blue">当前第 '+pageObj.curpage+' 页，每页 '+pageObj.percount+' 条，共 '+pageObj.totalcount+' 条 '+pageObj.totalpage+' 页</div>';
        var startNo=(pageObj.curpage-1)*pageObj.percount;// 当前页起始页码
        for(var i= 0,cur,len=datalist.length;i<len;i++){// 根据当前页数据重绘 dom
            cur=datalist[i];
            str+='<p>'+(startNo+i)+': '+cur['name']+'</p>'
        }
        jqDatalist.html(str);
    };
    var fRequest=function(){
        var fSuccess = function(data){
            oPagebarApi.fReset({
                data: data
            });
        };
        $.fn.request({
            drawDomFn:fSuccess,
            showloading:true,
            ajaxOpts:{
                url: URLS.d_pagebar
            }
        });// 请求全部数据
    };
    /** ============== **/
    $('.js-tbtns').on('click','button',fTbtnsClick);// 顶部按钮点击事件
    oPagebarApi = $('.js-pagebar').initPageBar({
        per:4,
        //perList:[],// 可选择的每页页码列表，若未定义则不可切换
        afterFlip: fAfterFlip// 每次翻页后的回调函数，datalist:当前页数据；pageObj:当前分页信息
    });
    fRequest();// 请求数据
});
